package com.shycloud.mido.task.api.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;

/**
    * 硬件产品表
    */
@ApiModel(value="com-shycloud-mido-task-api-entity-BasicGoodsInfo")
@Data
@TableName(value = "basic_goods_info")
public class BasicGoodsInfo {
    /**
     * 产品ID
     */
    @TableId(value = "id", type = IdType.INPUT)
    @ApiModelProperty(value="产品ID")
    private Integer id;

    /**
     * 产品名称
     */
    @TableField(value = "`name`")
    @ApiModelProperty(value="产品名称")
    private String name;

    /**
     * 展示排序
     */
    @TableField(value = "sort")
    @ApiModelProperty(value="展示排序")
    private Integer sort;

    /**
     * 商品所属类别ID
     */
    @TableField(value = "category_id")
    @ApiModelProperty(value="商品所属类别ID")
    private Integer categoryId;

    /**
     * 数量(0代表无限多)
     */
    @TableField(value = "unit_count")
    @ApiModelProperty(value="数量(0代表无限多)")
    private Integer unitCount;

    /**
     * 计量单位(个，天等等)
     */
    @TableField(value = "unit")
    @ApiModelProperty(value="计量单位(个，天等等)")
    private String unit;

    /**
     * 商品单价
     */
    @TableField(value = "unit_price")
    @ApiModelProperty(value="商品单价")
    private BigDecimal unitPrice;

    /**
     * 后台商品价格
     */
    @TableField(value = "goods_price")
    @ApiModelProperty(value="后台商品价格")
    private BigDecimal goodsPrice;

    /**
     * IOS平台价格
     */
    @TableField(value = "ios_price")
    @ApiModelProperty(value="IOS平台价格")
    private BigDecimal iosPrice;

    /**
     * 折扣
     */
    @TableField(value = "discount")
    @ApiModelProperty(value="折扣")
    private BigDecimal discount;

    /**
     * 商品有效时间(天)
0代表不限时长
     */
    @TableField(value = "expire_duration")
    @ApiModelProperty(value="商品有效时间(天),0代表不限时长")
    private Integer expireDuration;

    /**
     * 商品总部库存数量
     */
    @TableField(value = "stock_quantity")
    @ApiModelProperty(value="商品总部库存数量")
    private Integer stockQuantity;

    /**
     * 最小可购买数量
     */
    @TableField(value = "min_purchase")
    @ApiModelProperty(value="最小可购买数量")
    private Integer minPurchase;

    /**
     * 产品类型ID，对应product_info表的id
     */
    @TableField(value = "product_id")
    @ApiModelProperty(value="产品类型ID，对应product_info表的id")
    private Integer productId;

    /**
     * 赠送商品ID(本表)
     */
    @TableField(value = "gift_goods_id")
    @ApiModelProperty(value="赠送商品ID(本表)")
    private Integer giftGoodsId;

    /**
     * ios相关码，快乐贝、会员使用
     */
    @TableField(value = "ios_code")
    @ApiModelProperty(value="ios相关码，快乐贝、会员使用")
    private String iosCode;

    /**
     * 备注
     */
    @TableField(value = "`comment`")
    @ApiModelProperty(value="备注")
    private String comment;

    /**
     * 购买状态 0-可购买,1-不可购买
     */
    @TableField(value = "`status`")
    @ApiModelProperty(value="购买状态 0-可购买,1-不可购买")
    private String status;

    /**
     * 更新时间
     */
    @TableField(value = "update_time")
    @ApiModelProperty(value="更新时间")
    private Date updateTime;

    /**
     * 更新人信息
     */
    @TableField(value = "updated_by")
    @ApiModelProperty(value="更新人信息")
    private String updatedBy;

    /**
     * 删除标记 0-正常,1-删除
     */
    @TableField(value = "del_flag")
    @ApiModelProperty(value="删除标记 0-正常,1-删除")
    private String delFlag;

    /**
     * 商品类型
0-只面向运营商机构 
1-只面向用户 
2-开始面向运营商最后面向用户
     */
    @TableField(value = "`type`")
    @ApiModelProperty(value="商品类型,0-只面向运营商机构 ,1-只面向用户 ,2-开始面向运营商最后面向用户")
    private String type;

    /**
     * 使用类型 0-永久 1-租赁
     */
    @TableField(value = "use_type")
    @ApiModelProperty(value="使用类型 0-永久 1-租赁")
    private String useType;

    /**
     * 后台商品快乐贝价格
     */
    @TableField(value = "gold_price")
    @ApiModelProperty(value="后台商品快乐贝价格")
    private Integer goldPrice;

    /**
     * 商品APP端价格
     */
    @TableField(value = "app_price")
    @ApiModelProperty(value="商品APP端价格")
    private BigDecimal appPrice;

    /**
     * 商品APP端快乐贝价格
     */
    @TableField(value = "app_gold_price")
    @ApiModelProperty(value="商品APP端快乐贝价格")
    private Integer appGoldPrice;

    public static final String COL_ID = "id";

    public static final String COL_NAME = "name";

    public static final String COL_SORT = "sort";

    public static final String COL_CATEGORY_ID = "category_id";

    public static final String COL_UNIT_COUNT = "unit_count";

    public static final String COL_UNIT = "unit";

    public static final String COL_UNIT_PRICE = "unit_price";

    public static final String COL_GOODS_PRICE = "goods_price";

    public static final String COL_IOS_PRICE = "ios_price";

    public static final String COL_DISCOUNT = "discount";

    public static final String COL_EXPIRE_DURATION = "expire_duration";

    public static final String COL_STOCK_QUANTITY = "stock_quantity";

    public static final String COL_MIN_PURCHASE = "min_purchase";

    public static final String COL_PRODUCT_ID = "product_id";

    public static final String COL_GIFT_GOODS_ID = "gift_goods_id";

    public static final String COL_IOS_CODE = "ios_code";

    public static final String COL_COMMENT = "comment";

    public static final String COL_STATUS = "status";

    public static final String COL_UPDATE_TIME = "update_time";

    public static final String COL_UPDATED_BY = "updated_by";

    public static final String COL_DEL_FLAG = "del_flag";

    public static final String COL_TYPE = "type";

    public static final String COL_USE_TYPE = "use_type";

    public static final String COL_GOLD_PRICE = "gold_price";

    public static final String COL_APP_PRICE = "app_price";

    public static final String COL_APP_GOLD_PRICE = "app_gold_price";
}